Courses
Courses lay one level of abstraction above sections in the academic hierarchy at UTD. A course represents a class offered by a school at UTD.
A Course should not be confused with a Section which is the actual instantiation of a Course with a professor and dedicated meeting times.A course can have multiple sections associated with it every semester. An example of a course would be ECS1100.
This data will include important pieces of information that a relevant to every section of the course like its prerequisites and the number of credit hours. All of the attributes associated with a course are as follows:
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
_id | string | true | none | The primary key associated with a course |
course_number | string | true | none | The course's official number |
subject_prefix | string | true | none | The course's subject prefix |
title | string | true | none | The course's title |
description | string | true | none | The course's description |
school | string | true | none | The course's school |
credit_hours | string | true | none | The number of credit hours awarded by successful completion of the course |
class_level | string | true | none | The level of education that this course course corresponds to |
activity_type | string | true | none | The type of class this course corresponds to |
grading | string | true | none | The grading status of this course |
internal_course_number | string | true | none | The internal (university) number used to reference this course |
prerequisites | CollectionRequirement | false | none | A Collection Requirement object containing a list of the courses that must be taken before this course |
corequisites | CollectionRequirement | false | none | A Collection Requirement object containing a list of the courses that must be taken before or alongside this course |
lecture_contact_hours | string | true | none | The weekly contact hours in lecture for a course |
laboratory_contact_hours | string | true | none | The weekly contact hours in laboratory for a course |
offering_frequency | string | true | none | The frequency of offering a course. The meanings of each letter can be found in the UTD Course Policies page. Example: "S", "Y", "T", "R" course |
Querying a Course
There are two main ways to query for a course:
- By Query Paramters
- By ID
Each of these methods has its own API endpoint to get the requested data.
GET /course
The default endpoint for /course returns a list of courses matching the set of query parameters provided.
Below is a list of all of the parameters that can be used to refine your query:
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
course_number | query | string | false | The course's official number |
subject_prefix | query | string | false | The course's subject prefix |
title | query | string | false | The course's title |
description | query | string | false | The course's description |
school | query | string | false | The course's school |
credit_hours | query | string | false | The number of credit hours awarded by successful completion of the course |
class_level | query | string | false | The level of education that this course course corresponds to |
activity_type | query | string | false | The type of class this course corresponds to |
grading | query | string | false | The grading status of this course |
internal_course_number | query | string | false | The internal (university) number used to reference this course |
lecture_contact_hours | query | string | false | The weekly contact hours in lecture for a course |
offering_frequency | query | string | false | The frequency of offering a course |
Example responses
200 Response
[
{
"_id": "string",
"course_number": "string",
"subject_prefix": "string",
"title": "string",
"description": "string",
"school": "string",
"credit_hours": "string",
"class_level": "string",
"activity_type": "string",
"grading": "string",
"internal_course_number": "string",
"prerequisites": {
"name": "string",
"required": 0,
"options": [
{
"type": null
}
],
"type": null
},
"corequisites": {
"name": "string",
"required": 0,
"options": [
{
"type": null
}
],
"type": null
},
"lecture_contact_hours": "string",
"laboratory_contact_hours": "string",
"offering_frequency": "string"
}
]
GET /course/{id}
This endpoint returns a single Course object with a primary key matching {id}.
Parameters
This endpoint accepts a single route paramter: id
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
id | path | string | true | ID of the course to get |
Example responses
200 Response
{
"_id": "string",
"course_number": "string",
"subject_prefix": "string",
"title": "string",
"description": "string",
"school": "string",
"credit_hours": "string",
"class_level": "string",
"activity_type": "string",
"grading": "string",
"internal_course_number": "string",
"prerequisites": {
"name": "string",
"required": 0,
"options": [
{
"type": null
}
],
"type": null
},
"corequisites": {
"name": "string",
"required": 0,
"options": [
{
"type": null
}
],
"type": null
},
"lecture_contact_hours": "string",
"laboratory_contact_hours": "string",
"offering_frequency": "string"
}